package com.zbkj.service.service;

import com.github.pagehelper.PageInfo;
import com.zbkj.dal.entity.ba.Displace;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zbkj.dal.pojo.request.PageParamRequest;
import com.zbkj.dal.pojo.request.ba.ConcludeDisplaceRequest;
import com.zbkj.dal.pojo.request.ba.CreateDisplaceRequest;
import com.zbkj.dal.pojo.request.ba.QueryDisplaceRequest;
import com.zbkj.dal.pojo.response.ba.DisplaceDetailResponse;
import com.zbkj.dal.pojo.response.ba.DisplaceResponse;

import java.util.List;

/**
 * <p>
 * 奢品置换 服务类
 * </p>
 *
 * @author jhui
 * @since 2023-10-03
 */
public interface DisplaceService extends IService<Displace> {

    /**
     * 我的奢品置换记录
     * @param status
     * @param pageParamRequest
     * @return
     */
    List<DisplaceResponse> listMyDisplace(Integer status, PageParamRequest pageParamRequest);

    /**
     * 删除奢品置换
     * @param id
     */
    Boolean deleteMyDisplace(Integer id);

    /**
     * 创建奢品置换
     * @param createDisplaceRequest
     * @return
     */
    Boolean create(CreateDisplaceRequest createDisplaceRequest);

    /**
     * 全球找货记录详情
     * @param id
     * @return
     */
    DisplaceDetailResponse detail(Integer id);

    /**
     * 分页查询
     * @param queryDisplaceRequest
     * @param pageParamRequest
     * @return
     */
    PageInfo<DisplaceResponse> queryDisplace(QueryDisplaceRequest queryDisplaceRequest, PageParamRequest pageParamRequest);

    /**
     * 更新状态
     * @param concludeDisplaceRequest
     * @return
     */
    Boolean confirm(ConcludeDisplaceRequest concludeDisplaceRequest);
}
